$(function () {
    // 获取form元素并未其校验数据
    let form = layui.form;
    form.verify({
        nickname: function (value) {
            if (value.length > 6) {
                return '昵称必须在1~6个字符之间'
            }
        }
    })
    // 渲染初始化用户基本信息
    initUserInfo()
    function initUserInfo() {
        // 通过接口说明文档利用ajax获取用户数据
        $.ajax({
            method: 'GET',
            url: '/my/userinfo',
            success: function (res) {
                // 定义失败状态下的提示
                if (res.status !== 0) {
                    return layer.msg('获取用户信息失败!')
                }
                // 调用form.val()方法为表单赋值
                form.val('formUserInfo', res.data);
            }
        })
    }
    // 重置表单的按钮
    $('#btnReset').on('click', function (e) {
        // 阻止表单的默认重置行为不让他都清空 要回到最初渲染的地方也就是保存用户的登录名称
        e.preventDefault();
        // 重新渲染初始化用户基本信息
        initUserInfo()
    })
    // 监听表单的提交事件
    $('.layui-form').on('submit', function (e) {
        // 阻止表单的默认提交行为
        e.preventDefault()
        // 发起 ajax 数据请求
        $.ajax({
            method: 'POST',
            url: '/my/userinfo',
            data: $(this).serialize(),//利用jquery快速获取表单数据
            success: function (res) {
                if (res.status !== 0) {
                    return layer.msg('更新用户信息失败！')
                }
                layer.msg('更新用户信息成功！')
                // 调用父页面中的方法，重新渲染用户的头像和用户的信息
                window.parent.getUserInfo()
            }
        })
    })
})

